#ifndef PICCOLO_RENDERER_H
#define PICCOLO_RENDERER_H

#include "PiccoloRenderContext.h"

namespace Piccolo
{
#define RENDERER_NUM_BUFFER 2

    class PiccoloRenderer
    {
    public:
        PiccoloRenderer();
        ~PiccoloRenderer();

        bool Begin(int32_t* outImageIndex);
        bool End(int32_t imageIndex, const std::vector<VkCommandBuffer>& cmdBuffers);

    private:
        int32_t mCurrentBuffer = 0;
        std::vector<VkSemaphore> mImageAvailableSemaphores;
        std::vector<VkSemaphore> mSubmittedSemaphores;
        std::vector<VkFence> mFrameFences;
    };
}

#endif